<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sect1 PUBLIC "-//OASIS//DTD DocBook XML V4.5//EN"
  "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd" [
  <!ENTITY % general-entities SYSTEM "../general.ent">
  %general-entities;
]>

<sect1 id="ch-system-introduction">
  <?dbhtml filename="introduction.html"?>

  <title>Введение</title>

  <para>В этой главе будет описан процесс сборки конечной системы LFS с помощью ранее установленного временного набора инструментов. С помощью команды chroot будет выполнен вход во временную мини Linux систему (временный набор инструментов), далее будут выполнены окончательные подготовительные работы, а затем будут выполнены установки необходимых пакетов.</para>

  <para>Установка программного обеспечения проста. Несмотря на то, что инструкции по установке  могли быть более компактны и универсальны, в книги предоставляются расширенные инструкции для каждого пакета, чтобы минимизировать возможные ошибки на этапе конфигурирования, сборки и тестирования. Ключом к пониманию что делает Linux систему рабочей, являются знания для чего используется каждый пакет и зачем он может понадобиться вам или системе.</para>

  <para>Мы не рекомендуем использовать оптимизацию. Она может ускорить работу программы, но при этом могут возникнуть проблемы при компиляции и запуске. Если пакет не удается скомпилировать с включенной оптимизацией, необходимо её отключить, и выполнить повторную компиляцию. Даже если компиляция пакета была успешной, с включенной оптимизацией, существует риск что компиляция была выполнена неправильно, потому что могут быть сложные взаимодействия между кодом и инструментами сборки. Обратите внимание, что аргументы <option>-march</option> и <option>-mtune</option> не указаны в книге и не были протестированы. Они могут вызвать проблемы с программами набора временных инструментов, таких как Binutils, GCC и Glibc. Потенциальные преимущества при использовании оптимизации компилятора не так высоки по сравнению с рисками. Если сборка системы LFS выполняется Вами первый раз, рекомендуется не использовать оптимизацию. Система будет работать очень быстро и в тоже время будет стабильна.</para>

  <para>Порядок установки пакетов в этой главе очень важен. Необходимо строго соблюдать последовательность сборки и установки пакетов, для гарантии того, что устанавливаемый пакет не будет иметь ссылку на каталог <filename class="directory">/tools</filename>. По этой же причине, не следует компилировать пакеты параллельно. Выполняя компиляцию параллельно, можно сэкономить время (особенно на многопроцессорных или многоядерных машинах), но это может привести к тому, что если программа имеет связи с каталогом <filename
  class="directory">/tools</filename> при выполнении она может перестать работать когда этот каталог будет удалён.</para>

  <para>Перед инструкциями по установке, каждая страница содержит информацию о пакете, включая краткое описание содержимого пакета, приблизительное время сборки, и сколько дискового пространства требуется во время процесса сборки. После инструкций по установке, будет представлен список программ и библиотек (а также их краткое описание), которые включены в пакет.</para>

  <note><para>В Главе&nbsp;6 значение SBU и требуемого дискового пространства содержит информацию по выполнению набора тестов для всех пакетов, где есть такая возможность.</para></note>

  <sect2>
    <title>О библиотеках</title>

    <para>Как правило, редакторы LFS препятствуют созданию и установке статических библиотек. Первоначальная цель использования  большинства статических библиотек в современных Linux системах устарела. Кроме того, связывание статической библиотеки
     в программу может быть не самым лучшим решением. Если требуется обновление библиотеки, для устранения проблем безопасности, то все программы, которые используют статическую библиотеку, должны выполнить повторную компоновку (линковку), чтобы изменить ссылку на новую версию библиотеки. Поскольку использование статических библиотек не всегда бывает очевидным, программы (и процедуры, необходимые для выполнения повторной компоновки) могут быть неизвестными.</para>

    <para>В процедурах главы&nbsp;6, будет удалена или закрыта возможность установки большинства статических библиотек. Как правило, такое правило передается  аргументом <option>--disable-static</option> в сценарий <command>configure</command>. В некоторых случаях, необходимы альтернативные пути решения. Особенно это относится к пакетам glibc и gcc, где наличие статических библиотек остается неотъемлемым для общего процесса сборки пакетов.</para>

    <para>Более подробное обсуждение вы можете изучить, перейдя по ссылке:<ulink url="&blfs-root;/view/&short-version;/introduction/libraries.html">Библиотеки: Статические или динамические?</ulink> в книге BLFS.</para>

  </sect2>

</sect1>
